﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Diagnostics;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading;
using Microsoft.Win32.SafeHandles;

namespace JasLib.Interop.Win32
{
    public static partial class WINMM
    {
        [DllImport(Constants.ModuleNames.WINMM, EntryPoint = "midiOutGetNumDevs", ExactSpelling = true, CharSet = CharSet.Ansi, CallingConvention = CallingConvention.Winapi)]
        public static extern uint midiOutGetNumDevs();

        [DllImport(Constants.ModuleNames.WINMM, EntryPoint = "midiInGetNumDevs", ExactSpelling = true, CharSet = CharSet.Ansi, CallingConvention = CallingConvention.Winapi)]
        public static extern uint midiInGetNumDevs();

        [DllImport(Constants.ModuleNames.WINMM, EntryPoint = "midiOutGetDevCapsW", ExactSpelling = true, CharSet = CharSet.Ansi, CallingConvention = CallingConvention.Winapi)]
        public static extern MMRESULT midiOutGetDevCaps(UINT_PTR uDeviceID, out MIDIOUTCAPS caps, uint cbMidiOutCaps);
    }
}
